컨텐츠상세보기

얄코의 TOO MUCH 친절한 깃&깃허브 - 진짜 개발자답게 제대로 활용할 수 있도록 제대로 파는 (커버이미지)
알라딘
얄코의 TOO MUCH 친절한 깃&깃허브 - 진짜 개발자답게 제대로 활용할 수 있도록 제대로 파는
  • 평점평점점평가없음
  • 저자고현민 (지은이) 
  • 출판사리코멘드 
  • 출판일2023-08-01 
보유 1, 대출 0, 예약 0, 누적대출 2, 누적예약 0

책소개

★ “이렇게까지 설명한다고?”
★ 진짜 개발자답게 제대로 활용할 수 있도록 투머치 설명러 얄코가 다 알려주는 깃&깃허브 가이드


프로그래밍을 배워 개발자가 되겠다고 하면 주변에서는 묻지도 따지지도 않고 '깃'이라는 것을 배우라고 합니다. 프로그램 버전을 관리하는 도구인 깃은 '협업하는 요즘 개발자'에게는 필수 소양으로 손꼽힙니다.

『얄코의 TOO MUCH 친절한 깃&깃허브』는 깃의 작동 방식을 이해하고 깃과 깃허브를 협업에서 활용하는 방법을 생생하게 다룹니다. 프로그래밍을 처음 배우는 사람도, 쌓아 놓은 파일이 없어도 버전 관리를 연습해 볼 수 있도록 예제 파일을 제공하는 것은 물론 실무에서 일어날 법한 상황을 예시로 설명하고 있어 누구라도 “그래, 이런 일이 있을 수 있지”, “맞아, 그때 해결 못하고 헤매던 게 바로 이거야”라며 고개를 끄덕이고 따라하게 됩니다.

또한 실무에서 '절대 부족함이 없도록' 꼼꼼한 조사와 준비 끝에 만들어진 결과물이기 때문에 그동안 add, commit, push, pull이 전부인 줄 알았다면 제대로 공부할 기회, GUI 환경은 쉽고 CLI 환경은 어렵다고 생각했다면 오해를 풀 기회, 현업에서 일어나는 다양한 상황 예시로 개념과 원리를 제대로 이해할 수 있는 기회입니다. 깃&깃허브를 시작해야겠다고 맘을 먹었다면 유튜브와 인프런에서 최다 수강자 수와 만족도로 이미 검증된 『얄코의 TOO MUCH 친절한 깃&깃허브』로 시작하세요.

<얄코의 TOO MUCH 친절한> 시리즈는
친절하다고 하지만 세상 불친절한 것이 많아 'TOO MUCH 친절한'으로 탄생하였습니다.

★ 유튜브와 인프런 인기 강의가 책으로 업그레이드되어 돌아왔다!
★ 얄코가 안내하는 깃&깃허브 마스터 3단계

(1단계) 도움 닫기
군더더기 없이 깃과 깃허브를 빠르게 실습하며 전체적인 감을 잡자!


PART 01에서는 깃을 활용하여 프로젝트의 과거와 현재를 여행하는 방법을 배우고 CLI와 소스트리로 실습합니다. 도구를 설치하고 기본 설정을 마치면 바로 실습에 돌입할 차례! 세세한 깃 기능을 일일이 배우기에 앞서, 일단 프로그램의 변경 사항을 버전에 담고 프로젝트의 차원(브랜치)을 넘나들고 충돌을 해결하는 과정만 간결하게 학습합니다. 이 과정에서 실무에서 많이 쓰는 CLI(명령 행 인터페이스)를 기본으로 깃 작업을 연습하고, 소스트리로 같은 작업을 반복하며 깃의 원리를 손으로 익힙니다. 그런 다음 깃허브로 푸시와 풀 작업을 하면서 로컬과 원격 저장소를 오가며 협업하는 과정을 실습합니다.

(2단계) 멀리 뛰기
깃과 깃허브의 작동 원리와 주요 명령어, 실무 전략과 활용 팁을 정복하자!


실습으로 손을 풀었다면 이제 깃과 깃허브의 작동 원리를 상세하게 이해하고, 고급 기능을 연습해 봅니다. PART 02에서는 변경 사항이 작업 디렉터리, 스테이지 영역, 저장소를 거치며 저장되고 수정되는 전체 과정을 머릿속에 넣은 상태에서 컨벤션에 따라 더욱 섬세하게 커밋하고, 과거 커밋을 자유롭게 수정하고 되돌리는 방법을 실습합니다. 그런 다음 깃과 깃허브의 주요 기능을 이용해 실무에서 협업하는 과정을 익힙니다. 또한 깃의 사용법을 스스로 찾는 방법, 각종 설정과 단축키 등 작업 환경을 내 입맛에 맞게 설정하는 요령도 배울 수 있습니다.

(3단계) 높이 뛰기
실무에서 유용한 깃허브의 고급 기능까지 챙겨 가자!


전자책으로 제공되는 무료 특별판은 깃을 쓰고 있는 현업 개발자에게 유용한 고급 기능을 알려줍니다. 저장소에서 생기는 이벤트를 감지해서 스크립트를 실행하는 깃 훅, 여러 프로젝트를 사용할 때 유용한 서브모듈, 오픈 소스 프로젝트에 참여할 수 있는 방법, 테스트/빌드/배포 과정을 자동화하는 깃허브 액션, 프로젝트 세부 내용을 빠르게 파악할 수 있는 옥토트리와 깃허브 CLI 등을 익혀 개발자의 협업 능력을 한 단계 높일 수 있습니다.

베타리더평

동기를 유발하고 반복적인 실습 후 복습시키는 과정이 잘 짜여진 수업 같았습니다. 이 책만으로도 깃과 깃허브 활용법을 배우고 정리하기에 충분할 정도로 친절했습니다. 첫째, 비전공자도 이해하고 따라할 수 있을 정도로 친절한 설명과 이미지들, 둘째, 가독성이 좋은 라이트 테마 코드들, 셋째, 명령어를 복습하고 후에 찾아보기 좋은 '외워서 써먹는 깃 명령어' 이 세 가지가 삼박자를 이뤄서 깃에 입문하는 데 정말 최적화되어 있다고 느껴졌습니다. 특히 각 CHAPTER마다 있는 '외워서 써먹는 깃 명령어'의 경우 깃을 알아갈수록 늘어나는 명령어로 인해 혼란스러워 했던 저에게 너무 유용한 페이지였습니다. 그때그때 기억해야 하는 부담을 덜고 훨씬 빨리 읽을 수 있었던 것 같습니다. 책의 흐름 또한 만족스러웠는데요. 깃의 필요성으로 시작해서 학습자의 동기를 유발하고 실제 상황에 대한 반복적인 실습으로 자연스럽게 명령어를 학습하게 하고 CHAPTER 마무리에서 명령어를 복습시키는 과정이 잘 짜여진 수업 같았습니다. 덕분에 책을 읽고 혼자 따라하는 데도 마치 선생님과 함께 공부하는 느낌이 들었습니다. 학습자에 대한 고민과 배려가 돋보이는 책이었습니다. - 이경윤 -

투머치라서 너무 고마운 책입니다! 컴공 이중전공생으로 팀 프로젝트를 할 때마다 등장하는 깃과 깃허브가 어려웠고, 어설프게 구글링하면서 사용하다 보니 제대로 되지 않거나 파일을 날리는 경우도 허다했습니다. 얄코 님의 유튜브와 인프런 강의로 공부를 시작하는 단계에서 베타 리딩에 참여하게 되었습니다. 책과 함께 차근차근 예제를 따라가니까 그동안 몰랐던 기능이 많았다는 생각과 함께 더 이상 깃과 깃허브가 어렵게 여겨지지 않았습니다. 책의 취지에 맞게 정말 이렇게까지 친절하게 설명해 줄 수 있나 싶을 정도로 섬세한 설명과 직접 사용해 볼 수 있는 단계별 예제까지 너무 알차게 느껴졌습니다. 그리고 '외워서 써먹는 깃 명령어'가 다음으로 넘어가기 전에 배웠던 명령어를 상기시켜 줘서 정리하기에 너무 좋았습니다. 이제 막 기초를 알게 된 상태이지만 자신감을 갖고 협업을 수월하게 할 수 있을 만큼 깃과 깃허브에 능숙해지고 싶다는 다짐을 할 수 있게 해 준 책입니다. 깃과 깃허브가 어렵다고 생각했다면 이 책입니다. - 여언주 -

'개발보다 깃이 더 싫어!' 할 정도로 깃이 어려웠는데, '오? 재밌는데?'로 바뀌었습니다. 이제 막 개발 공부를 시작한 사람입니다. 이 책은 깃과 깃허브를 처음 접하는 사람이거나 머릿속에 정보가 뒤죽박죽인 사람에게 아주 유용합니다. 프로젝트를 할 때 '개발보다 깃이 더 싫어!' 할 정도로 깃이 어려웠는데, 이 책에 있는 코드들을 따라하니 처음으로 '오? 재밌는데?'라는 생각이 들었습니다. 그 전에는 단순히 git add, commit, push만 알았는데 이 책을 베타리딩 한 후에는 rebase와 merge의 차이점이 뭔지, reset과 revert는 어떤 경우에 써야 하는지 등 파편화되어 있던 정보들이 하나로 정리되는 기분이었습니다. 책의 일부분만 읽었는데도 이 정도인데, 나머지 내용은 어떨지 더욱 기대되고 궁금해지는 책이었습니다. - 유은겸 -

강의가 주는 동적인 재미와 책이 주는 정적인 설명이 시너지가 되었습니다. 컴퓨터공학과 4학년이 되고 나니 수업의 대부분이 협업 프로젝트였고 효율적인 협업을 위해서 깃, 깃허브를 사용하기 시작했습니다. 깃으로 무엇을 할 수 있고 어디까지 할 수 있는지 모른 채 IDE에서 깃허브와 연동하기 위해 pull, commit, push만 사용하던 도중에 얄코의 동영상 강의를 듣게 되었습니다. 시각적인 자료와 재치있고 친절한 설명 덕분에 실제 프로젝트를 하면서 깃 브랜치에서 작업해 최종적으로 main으로 합치는 것과 호환성으로 인해 특정 커밋 지점으로 돌아가야할 때 리셋 기능 등을 사용하는 방법까지 알게 되었습니다. 하지만 미처 익히지 못했거나 기억하지 못한 기능이 있어 복습이 필요하던 찰나에 책이 나온다 하여 베타 리딩을 신청하였고 책과 함께 강의를 병행하여 복습하였는데 강의가 주는 동적인 재미와 책이 주는 정적인 설명이 시너지가 되어 더 쉽고 빠르게 이해할 수 있었습니다. - 박지민 -

더 이상 clone으로 문제를 해결하고 있지 않습니다. 평소 깃을 사용하면서 전체적인 플로우를 명확히 이해하고 있지 못해서 오류가 나거나 충돌이 났을 때 잘 해결하지 못하고 새로 clone을 받는 일이 많았습니다. 이 책을 보면서 깃의 전체적인 흐름을 이해할 수 있었고 CLI뿐만아니라 GUI로도 다시 한 번 파악할 수 있어서 이해하는 데 많은 도움이 되었습니다. - 홍민정 -

★ 베타리더들의 Bravo! Bravo!! Bravo!!!

아래 내용은 베타리더들이 내용을 읽다가 기막히게 좋다고 “Bravo”를 외쳐 주신 부분입니다.

> 예제를 깊게 들어가다 보면 '지금 뭐하고 있었지?' 하고 길을 잃을 때가 있는데 PART - CHAPTER - LESSON 구성의 도입부에 배워야 할 내용을 명확하게 기술해 주어서 좋았습니다.
> 깃을 시간과 차원의 예시로 설명한 부분은 비유가 너무 적절하다고 생각했습니다. 아직 깃을 사용해 보지 않은 개발자 혹은 취업 준비생들에게 깃의 필요성을 이해시키기에 좋은 부분 같습니다.
> 개발을 하면서 개발 명세서를 정확히 써야 하지만 쉽지 않습니다. 실제 깃을 쓰지 않고 작업할 때 벌어지는 까다롭고 힘든 작업을 예시로 들어 주셔서 마치 현장을 들킨 느낌입니다. 찰떡 같은 비유와 예시에 뜨끔하면서도 이해가 잘 되었습니다.
> 따로 찾아볼 필요가 없을 정도로 용어, 개념에 대한 설명이 잘 되어 있습니다.
> <미토의 참:견>에 알찬 내용이 많네요. 아마도 미토의 '참견'은 참견하듯이 말하지만 사전적 의미와 달리 무조건 따라만 하지 않도록 중간중간 참된 지식이나 조언을 주네요.
> 지금도 cmd+s(ctrl+s) 연타 중입니다. 제일 중요한 습관인 것 같습니다. 위에 몇 개 날려 먹었거든요.
> 깃을 사용하면서 매번 입력하는 명령어의 구체적인 의미를 몰랐었는데, 매번 명령어에 대한 설명을 구체적으로 해 주셔서 이제 명령을 이해하면서 쓸 수 있게 되었습니다.
> 이 책은 읽으면서도 꼭 필요한 내용이 많아 “맞아, 맞아”, “그렇지”를 연발하며 읽었습니다. 다른 곳에서는 얻을 수 없는 의미있는 관점을 많이 얻어갑니다.
> 깃 명령어는 자주 쓰는 것 외에는 그때그때 검색해서 쓰고 있었는데, 이렇게 한 CHAPTER가 끝날 때마다 직접 써 볼 수 있게 하니 기억에 잘 남을 것 같습니다. 뒤로 갈수록 명령어가 많아져도 여기서 쉽게 확인할 수 있어서 좋습니다.
> -m 옵션 여러 개로 커밋 메시지를 여러 줄을 작성할 수 있다고 알려주는 곳이 없던데 하나 알아갑니다!
> 리셋과 리버트는 비슷한 기능이라고만 알고 있었는데, 이번 기회에 그 차이점을 명확하게 알게 되었습니다. 또한 리버트가 왜 존재하는지도 설명해 주셔서 비교하는 데 도움이 되었습니다.
> CLI, GUI 모두 설명해 주는 구성이 좋습니다!
> 지금까지 본 머지와 리베이스 설명 중 가장 명쾌합니다! 단순히 이렇다는 것 외에 차이점, 상황별 설명 등을 그림과 함께 설명해 주니 머지와 리베이스가 이렇게 쉬웠었나 하며 술술 읽었습니다.
> 이 책의 따라하기는 스토리의 흐름을 따라서 자연스럽게 하나씩 스킬을 배워가는 게임 같은 과정으로 느껴졌습니다. 깃, 깃허브 초보자들이 읽기에 이것보다 쉽고 재밌는 책은 없을 거라고 생각합니다!

저자소개

두 아이를 키우는 아빠이자, 유튜브 채널 <얄팍한 코딩사전>을 방송하는 유튜버입니다.
풀스택 개발자로 일하며 쌓아 온 지식과 경험을 바탕으로, 어려운 프로그래밍 개념들을 초보자들이 이해하기 쉽게 설명해 주는 콘텐츠들을 만들고 있습니다.
저서로는 『혼자 공부하는 얄팍한 코딩 지식』(2022, 한빛미디어)이 있습니다.
강의 채널 | 유튜브 www.youtube.com/@yalco-coding
인프런 www.inflearn.com/users/@yalco

목차

PART 01깃과 깃허브의 기초



CHAPTER 01 깃 시작하기


_LESSON 01 깃을 배워야 하는 이유

__깃으로 하는 시간 여행

__깃으로 하는 차원 여행



_LESSON 02 윈도우 사용자를 위한 설치와 설정

__윈도우용 깃 설치하기

__깃 CLI: 깃 배시 설치하기

__소스트리 설치하기

__VS Code 설치하기

__VS Code에서 터미널 열기



_LESSON 03 맥 사용자를 위한 설치와 설정

__맥용 깃 설치하기

__소스트리와 VS Code 설치하기



_LESSON 04 깃 설정하고 프로젝트 관리 시작하기

__깃 최초 설정하기

__깃으로 프로젝트 생성하고 관리하기



_LESSON 05 깃에게 맡기지 않을 것들

__.gitignore 파일 생성하기

__.gitignore 파일 형식



*외워서 써먹는 깃 명령어



CHAPTER 02 시간 여행하기

_LESSON 06 변화를 타임 캡슐에 담아 묻기

__프로젝트 변경 사항을 버전에 담기

__버전 커밋하기

__변경 사항 만들고 커밋하기



_LESSON 07 과거로 돌아가는 리셋과 리버트

__리셋으로 과거 내역 되돌리기

__리버트로 과거 내역 되돌리기



_LESSON 08 소스트리로 리셋과 리버트해 보기

__변경 사항 만들고 커밋하기

__소스트리에서 리버트 사용하기

__소스트리에서 리셋 사용하기



*외워서 써먹는 깃 명령어



CHAPTER 03 차원 넘나들기

_LESSON 09 여러 브랜치 만들어 보기

__브랜치로 차원 분기하기

__브랜치 생성, 이동, 삭제하기

__각각의 브랜치에서 서로 다른 작업해 보기



_LESSON 10 브랜치를 합치는 두 가지 방법

__머지로 브랜치 병합하기

__리베이스로 브랜치 병합하기



_LESSON 11 브랜치 간 충돌 해결하기

__충돌 상황 만들기

__머지 충돌 해결하기

__리베이스 충돌 해결하기



_LESSON 12 소스트리로 머지와 리베이스 실습하기

__소스트리에서 브랜치 만들고 변경 사항 추가하기

__소스트리에서 머지와 리베이스 실습하기

__소스트리에서 충돌 해결하기



*외워서 써먹는 깃 명령어



CHAPTER 04 깃허브 사용하기

_LESSON 13 깃허브 시작하기

__깃허브는 왜 사용하나요?

__깃허브 시작하기

__원격 저장소 만들기

__원격 저장소 사용하기



_LESSON 14 푸시와 풀

__원격 저장소로 커밋 푸시하기

__원격 저장소에서 커밋 풀하기

__풀할 것이 있는데 푸시한다면?

__리베이스와 머지로 풀을 하는 두 가지 방법

__협업상 충돌 발생 해결하기

__로컬의 작업 내역을 강제로 푸시하기



_LESSON 15 원격 저장소의 브랜치 다루기

__로컬 컴퓨터에서 브랜치 만들어 원격 저장소에 푸시하기

__원격 저장소의 브랜치를 로컬에서 풀하기

__원격 저장소의 브랜치 삭제하기



_LESSON 16 소스트리로 원격 저장소의 브랜치 다루기

__원격 저장소 추가하기

__푸시 및 풀하기

__브랜치 다루기



*외워서 써먹는 깃 명령어



PART 02 실전을 위한 깃 연습하기



CHAPTER 05 깃을 더 깊게 이해하기


_LESSON 17 깃의 특징과 기능의 기술적 이해

__깃이 특별한 이유

__깃의 세 가지 공간: 작업 디렉터리, 스테이지 영역, 저장소

__git rm 명령으로 파일 삭제하기

__git mv 명령으로 파일 이동하기

__restore 명령으로 파일을 작업 디렉터리로 되돌리기

__git reset 명령으로 작업 되돌리기



_LESSON 18 체크아웃과 페치

__헤드 개념 이해하기

__체크아웃

__페치와 풀의 차이

__원격 저장소의 새 브랜치 확인하기



_LESSON 19 도움말과 설정 활용하기

__git help 명령으로 도움말 활용하기

__깃 문서 참고하기

__깃의 각종 설정

__단축키 설정



*외워서 써먹는 깃 명령어



CHAPTER 06 더욱 세심하게 커밋하기

_LESSON 20 프로답게 커밋하기

__커밋 권장 사항과 커밋 메시지 컨벤션

__변경 사항을 확인하며 헝크 단위로 스테이징하기

__스태시로 작업하던 내용 잠시 치워 두기

__마지막 커밋 수정하기

__과거의 커밋을 수정, 삭제, 병합, 분할하기



_LESSON 21 취소와 되돌리기 더 깊이 알기

__관리되지 않는 파일들 삭제하기

__restore로 커밋하지 않은 변경 사항 되돌리기



_LESSON 22 커밋에 태그 달기

__마지막 커밋에 태그 달기

__원하는 커밋에 태그 달기

__태그로 체크아웃할 버전 지칭하기

__로컬의 태그를 원격 저장소와 동기화하기

__깃허브에서 파일 배포하기



*외워서 써먹는 깃 명령어



CHAPTER 07 브랜치 더 깊게 파기

_LESSON 23 fast forward vs 3-way merge



_LESSON 24 다른 브랜치에서 원하는 부분만 가져오기

__체리픽으로 원하는 커밋만 따 오기

__다른 가지의 잔가지 가져오기

__다른 가지의 커밋을 하나로 묶어서 가져오기



_LESSON 25 협업을 위한 브랜치 활용법



CHAPTER 08 분석하고 디버깅하기



_LESSON 26 로그 자세히 알아보기

_LESSON 27 변경 사항 확인하기

_LESSON 28 누가 코딩했는지 알아내기

_LESSON 29 오류가 발생한 시점 찾아내기



*외워서 써먹는 깃 명령어



CHAPTER 09 깃허브 제대로 활용하기



_LESSON 30 프로젝트와 폴더에 대한 문서

__README.md를 활용한 문서화

__문서 만들기



_LESSON 31 풀 리퀘스트와 이슈

__풀 리퀘스트 작성하기

__풀 리퀘스트 검토하고 처리하기

__이슈 작성하기



_LESSON 32 SSH 프로토콜을 이용한 인증하기

__SSH 키 존재 여부 확인하기

__SSH 키 등록하기

__SSH 키 사용해 보기



_LESSON 33 GPG로 커밋에 사인하기

__GPG 키 생성하기

__깃에 GPG 키 등록하기

한줄 서평